home *** CD-ROM | disk | FTP | other *** search
/ Mac Magazin/MacEasy 32 / Mac Magazin and MacEasy Magazine CD - Issue 32.iso / Grafik & Text / OzTeX3.0 / TeX-inputs / LaTeX / contrib / tugboat / ltugboat.cls < prev    next >
Text File  |  1997-03-26  |  38KB  |  1,105 lines

  1. %%
  2. %% This is file `ltugboat.cls',
  3. %% generated with the docstrip utility.
  4. %%
  5. %% The original source files were:
  6. %%
  7. %% tugboat.dtx  (with options: `latex,classtop,common,classtail,latex2e,ltugboatcls')
  8. %% 
  9. %% Copyright (C) 1994,1995,1996 TeX Users Group
  10. %% All rights reserved.
  11. %% 
  12. %% This file is part of the Tugboat package.
  13. %% -----------------------------------------
  14. %% 
  15. %% This is a generated file.  Permission is granted to to customize the
  16. %% declarations in this file to serve the needs of your installation.
  17. %% However, no permission is granted to distribute a modified version of
  18. %% this file under its original name.
  19. %% 
  20. %% 
  21. \NeedsTeXFormat{LaTeX2e}[1994/12/01]
  22. \ProvidesClass  {ltugboat}
  23.                    [1996/10/14 v1.4b
  24.                        TUGboat journal class%
  25.                    ]
  26. \csname tugstyloaded@\endcsname
  27. \def\tugstyloaded@{\tugstyinit\endinput}
  28. \providecommand{\@tugclass}{ltugboat}
  29. \def\TBInfo{\ClassInfo{\@tugclass}}
  30. \def\TBError{\ClassError{\@tugclass}}
  31. \def\TBWarning{\ClassWarning{\@tugclass}}
  32. \newif\ifpreprint
  33. \def\preprint{\preprinttrue}
  34. \DeclareOption{draft}{%
  35.   \AtEndOfClass{%
  36.     \setcounter{page}{1001}%
  37.     \BlackBoxes
  38.     \def\MakeRegistrationMarks{}%
  39.     \PrelimDrafttrue
  40.     }%
  41. }
  42. \DeclareOption{preprint}{%
  43.    \preprinttrue
  44. }
  45. \DeclareOption{final}{%
  46.   \AtEndOfClass{%
  47.     \UseTrimMarks
  48.     \NoBlackBoxes
  49.     \PrelimDraftFalse
  50.     }%
  51. }
  52. \DeclareOption{11pt}{%
  53.   \TBWarning{The \@tugclass\space class only supports 10pt fonts:
  54.     \MessageBreak option \CurrentOption\space ignored}%
  55. }
  56. \DeclareOption{12pt}{\csname ds@11pt\endcsname}
  57. \DeclareOption{oneside}{Option \CurrentOption\space ignored}
  58. \DeclareOption{twoside}{\ds@oneside}
  59. \DeclareOption{onecolumn}{\ds@oneside}
  60. \DeclareOption{twocolumn}{\ds@oneside}
  61. \DeclareOption{tugproc}{%
  62.   \TBWarning{Option \CurrentOption\space ignored: use class ltugproc
  63.     instead of \@tugclass}%
  64. }
  65. \DeclareOption{rawcite}{\let\if@Harvardcite\iffalse}
  66. \DeclareOption{harvardcite}{\let\if@Harvardcite\iftrue}
  67. \DeclareOption{numbersec}{\let\if@numbersec\iftrue}
  68. \DeclareOption{nonumber}{\let\if@numbersec\iffalse}
  69. \DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}}
  70. \ExecuteOptions{draft,numbersec,rawcite}
  71. \ProcessOptions
  72. \LoadClass[twoside]{article}
  73. \def\sectitlefont{\fontfamily\sfdefault\fontseries{bx}\fontshape{n}%
  74.          \fontsize\@xviipt\stbaselineskip\selectfont}
  75. \def\tensl{\fontseries{m}\fontshape{sl}\fontsize\@xpt\@xiipt
  76.           \selectfont}
  77. \def\EdNoteFont{\fontfamily{cmr}\fontseries{m}\fontshape{ui}%
  78.           \fontsize\@xpt\@xiipt\selectfont}
  79. \IfFileExists{mflogo.sty}%
  80.   {\RequirePackage{mflogo}}%
  81.  {\TBWarning
  82.      {Package mflogo.sty not available --\MessageBreak
  83.        Proceeding to emulate mflogo.sty}
  84.    \DeclareRobustCommand\logofamily{%
  85.      \not@math@alphabet\logofamily\relax
  86.      \fontencoding{U}\fontfamily{logo}\selectfont}
  87.    \DeclareTextFontCommand{\textlogo}{\logofamily}
  88.    \def\MF{\textlogo{META}\-\textlogo{FONT}\@}
  89.    \def\MP{\textlogo{META}\-\textlogo{POST}\@}
  90.    \DeclareFontFamily{U}{logo}{}
  91.    \DeclareFontShape{U}{logo}{m}{n}{
  92.      <8> <9> gen * logo
  93.      <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88> logo10
  94.    }{}
  95.    \DeclareFontShape{U}{logo}{m}{sl}{
  96.      <8> <9> gen * logosl
  97.      <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88> logosl10
  98.    }{}
  99.    \DeclareFontShape{U}{logo}{m}{it}{
  100.      <-> ssub * logo/m/sl
  101.    }{}%
  102.   }
  103. \def\makeescape#1{\catcode`#1=\z@}
  104. \def\makebgroup#1{\catcode`#1=\@ne}
  105. \def\makeegroup#1{\catcode`#1=\tw@}
  106. \def\makemath  #1{\catcode`#1=\thr@@}
  107. \def\makealign #1{\catcode`#1=4 }
  108. \def\makeeol   #1{\catcode`#1=5 }
  109. \def\makeparm  #1{\catcode`#1=6 }
  110. \def\makesup   #1{\catcode`#1=7 }
  111. \def\makesub   #1{\catcode`#1=8 }
  112. \def\makeignore#1{\catcode`#1=9 }
  113. \def\makespace #1{\catcode`#1=10 }
  114. \def\makeletter#1{\catcode`#1=11 }
  115. \chardef\other=12
  116. \let\makeother\@makeother
  117. \def\makeactive#1{\catcode`#1=13 }
  118. \def\makecomment#1{\catcode`#1=14 }
  119. \def\savecat#1{%
  120.   \expandafter\xdef\csname\string#1savedcat\endcsname{\the\catcode`#1}}
  121. \def\restorecat#1{\catcode`#1=\csname\string#1savedcat\endcsname}
  122. \def\SaveCS#1{\expandafter\let\csname saved@@#1\expandafter\endcsname
  123.   \csname#1\endcsname}
  124. \def\RestoreCS#1{\expandafter\let\csname#1\expandafter\endcsname
  125.   \csname saved@@#1\endcsname}
  126. \def\plaintubstyle{plain}
  127. \def\latextubstyle{latex}
  128. \providecommand\hb@xt@{\hbox to}
  129. \providecommand\textsuperscript[1]{\ensuremath{\m@th
  130.                                      ^{\mbox{\fontsize\sf@size\z@
  131.                                          \selectfont #1}}}}
  132. \def\AllTeX{(\La\kern-.075em)\kern-.075em\TeX}
  133. \def\AMS{American Mathematical Society}
  134. \def\AmS{$\mathcal{A}$\kern-.1667em\lower.5ex\hbox
  135.     {$\mathcal{M}$}\kern-.125em$\mathcal{S}$}
  136. \def\AmSLaTeX{\AmS-\LaTeX}
  137. \def\AmSTeX{\AmS-\TeX}
  138. \def\aw{A\kern.1em-W}
  139. \def\AW{Addison\kern.1em-\penalty\z@\hskip\z@skip Wesley}
  140. \def\BibTeX{\textsc{Bib}\kern-.08em\TeX}
  141. \def\CandT{\textsl{Computers \& Typesetting}}
  142. \def\CTAN{\acro{CTAN}}
  143. \def\DTD{\acro{DTD}}
  144. \def\DVItoVDU{DVIto\kern-.12em VDU}
  145. \DeclareRobustCommand\eTeX{\ensuremath{\varepsilon}-\kern-.125em\TeX}
  146. \def\HTML{\acro{HTML}}
  147. \def\ISBN{\acro{ISBN}}
  148. \def\ISSN{\acro{ISSN}}
  149. \def\JTeX{\leavevmode\hbox{\lower.5ex\hbox{J}\kern-.18em\TeX}}
  150. \def\JoT{\textsl{The Joy of \TeX}}
  151. \def\LAMSTeX{L\raise.42ex\hbox{\kern-.3em
  152.                    $\m@th$\fontsize\sf@size\z@\selectfont
  153.                    $\m@th\mathcal{A}$}%
  154.     \kern-.2em\lower.376ex\hbox{$\m@th\mathcal{M}$}\kern-.125em
  155.     {$\m@th\mathcal{S}$}-\TeX}
  156. \newcommand{\La}%
  157.    {L\kern-.36em
  158.         {\setbox0\hbox{T}%
  159.          \vbox to\ht0{\hbox{$\m@th$%
  160.                             \csname S@\f@size\endcsname
  161.                             \fontsize\sf@size\z@
  162.                             \math@fontsfalse\selectfont
  163.                             A}%
  164.                       \vss}%
  165.         }}
  166. \def\Mc{\setbox\TestBox=\hbox{M}M\vbox
  167.    to\ht\TestBox{\hbox{c}\vfil}} %  for Robert McGaffey
  168. \def\mf{\textsc{Metafont}}
  169. \def\MFB{\textsl{The \MF book}}
  170. \def\mp{MetaPost}
  171. \DeclareTextSymbol{\textohm}{OT1}{'012}
  172. \DeclareTextSymbolDefault{\textohm}{OT1}
  173. \newcommand\OMEGA{\textohm}
  174. \DeclareRobustCommand{\OTP}{\OMEGA\acro{TP}}
  175. \def\mtex{T\kern-.1667em\lower.424ex\hbox{\^E}\kern-.125emX\@}
  176. \DeclareRobustCommand\NTS{$\mathcal{N}$\lower.5ex\hbox
  177.     {$\mathcal{T}$}$\mathcal{S}$\@}
  178. \def\pcMF{\leavevmode\raise.5ex\hbox{p\kern-.3\p@ c}MF\@}
  179. \def\PCTeX{PC\thinspace\TeX}
  180. \def\pcTeX{\leavevmode\raise.5ex\hbox{p\kern-.3\p@ c}\TeX}
  181. \def\Pas{Pascal}
  182. \def\PiC{P\kern-.12em\lower.5ex\hbox{I}\kern-.075emC\@}
  183. \def\PiCTeX{\PiC\kern-.11em\TeX}
  184. \def\plain{\texttt{plain}}
  185. \def\POBox{P.\thinspace O.~Box }
  186. \def\PS{{Post\-Script}}
  187. \def\SC{Steering Committee}
  188. \def\SGML{\acro{SGML}}
  189. \def\SliTeX{\textrm{S\kern-.06em\textsc{l\kern-.035emi}%
  190.                      \kern-.06em\TeX}}
  191.  \def\slMF{\textsl{\MF}} % should never be used
  192.  \def\stTeX{\textsc{st}\kern-0.13em\TeX}
  193. \def\TANGLE{\texttt{TANGLE}\@}
  194. \def\TB{\textsl{The \TeX book}}
  195. \def\TP{\textsl{\TeX}: \textsl{The Program}}
  196. \DeclareRobustCommand\TeX{T\kern-.1667em\lower.424ex\hbox{E}\kern-.125emX\@}
  197. \def\TeXhax{\TeX hax}
  198. \def\TeXMaG{\TeX M\kern-.1667em\lower.5ex\hbox{A}%
  199.    \kern-.2267emG\@}
  200. \def\TeXtures{\textit{Textures}}
  201. \let\Textures=\TeXtures
  202. \def\TeXXeT{\TeX-{}-\XeT}
  203. \def\ttn{\textsl{TTN}\@}
  204. \def\TTN{\textsl{\TeX{} and TUG News}\@}
  205. \let\texttub\textsl              % redefined in other situations
  206. \def\TUB{\texttub{TUGboat}}
  207. \def\TUG{\TeX\ \UG}
  208. \def\tug{\acro{TUG}}
  209. \def\UG{Users Group}
  210. \def\UNIX{\acro{UNIX}}
  211. \def\VAX{V\kern-.12em A\kern-.1em X\@}
  212. \def\VorTeX{V\kern-2.7\p@\lower.5ex\hbox{O\kern-1.4\p@ R}\kern-2.6\p@\TeX}
  213. \def\XeT{X\kern-.125em\lower.424ex\hbox{E}\kern-.1667emT\@}
  214. \def\WEB{\texttt{WEB}\@}
  215. \def\WEAVE{\texttt{WEAVE}\@}
  216. \newlinechar=`\^^J
  217. \normallineskiplimit=\p@
  218. \clubpenalty=10000
  219. \widowpenalty=10000
  220. \def\NoParIndent{\parindent=\z@}
  221. \newdimen\normalparindent
  222. \normalparindent=20\p@
  223. \def\NormalParIndent{\global\parindent=\normalparindent}
  224. \NormalParIndent
  225. \def\BlackBoxes{\overfullrule=5\p@}
  226. \def\NoBlackBoxes{\overfullrule=\z@}
  227. \def\newline{\hskip\z@\@plus\pagewd\break}
  228. \edef\allowhyphens{\noexpand\hyphenpenalty\the\hyphenpenalty\relax
  229.   \noexpand\exhyphenpenalty\the\exhyphenpenalty\relax}
  230. \def\nohyphens{\hyphenpenalty\@M\exhyphenpenalty\@M}
  231. \newbox\T@stBox                 \newbox\TestBox
  232. \newcount\T@stCount             \newcount\TestCount
  233. \newdimen\T@stDimen             \newdimen\TestDimen
  234. \newif\ifT@stIf                 \newif\ifTestIf
  235. \def\ifundefined#1{\expandafter\ifx\csname#1\endcsname\relax }
  236. \newif\iftop@           \newif\ifbot@
  237. \def\topsmash{\top@true\bot@false\smash@}
  238. \def\botsmash{\top@false\bot@true\smash@}
  239. \def\smash{\top@true\bot@true\smash@}
  240. \def\smash@{\relax\ifmmode\def\next{\mathpalette\mathsm@sh}%
  241.         \else\let\next\makesm@sh\fi \next }
  242. \def\finsm@sh{\iftop@\ht\z@\z@\fi\ifbot@\dp\z@\z@\fi\box\z@}
  243. \long\def\ulap#1{\vbox to \z@{\vss#1}}
  244. \long\def\dlap#1{\vbox to \z@{#1\vss}}
  245. \def\xlap#1{\hb@xt@\z@{\hss#1\hss}}
  246. \long\def\ylap#1{\vbox to \z@{\vss#1\vss}}
  247. \long\def\zlap#1{\ylap{\xlap{#1}}}
  248. \def\basezero{\baselineskip\z@skip \lineskip\z@skip}
  249. \def\nullhrule{\hrule \@height\z@ \@depth\z@ \@width\z@ }
  250. \def\nullvrule{\vrule \@height\z@ \@depth\z@ \@width\z@ }
  251. \def\makestrut[#1;#2]{\vrule \@height#1 \@depth#2 \@width\z@ }
  252. \def\drawoutlinebox[#1;#2;#3]{\T@stDimen=#3
  253.         \vbox to#1{\hrule \@height\T@stDimen \@depth\z@
  254.             \vss\hb@xt@#2{\vrule \@width\T@stDimen
  255.                 \hfil\makestrut[#1;\z@]%
  256.                 \vrule \@width\T@stDimen}\vss
  257.             \hrule \@height\T@stDimen \@depth\z@}}
  258. \newcount\hours
  259. \newcount\minutes
  260. \def\SetTime{\hours=\time
  261.         \global\divide\hours by 60
  262.         \minutes=\hours
  263.         \multiply\minutes by 60
  264.         \advance\minutes by-\time
  265.         \global\multiply\minutes by-1 }
  266. \SetTime
  267. \def\now{\number\hours:\ifnum\minutes<10 0\fi\number\minutes}
  268. \def\Now{\today\ \now}
  269. \newif\ifPrelimDraft
  270. \def\midrtitle{\ifPrelimDraft {\textsl{preliminary draft, \Now}}\fi}
  271. \newdimen\raggedskip    \raggedskip=\z@
  272. \newdimen\raggedstretch \raggedstretch=5em    % ems of font set now (10pt)
  273. \newskip\raggedparfill  \raggedparfill=\z@\@plus 1fil
  274. \def\raggedspaces{\spaceskip=.3333em \relax \xspaceskip=.5em \relax }
  275. \def\raggedright{%
  276.   \nohyphens
  277.   \rightskip=\raggedskip\@plus\raggedstretch \raggedspaces
  278.   \parfillskip=\raggedparfill }
  279. \def\raggedleft{%
  280.   \nohyphens
  281.   \leftskip=\raggedskip\@plus\raggedstretch \raggedspaces
  282.   \parfillskip=\z@skip }
  283. \def\raggedcenter{%
  284.   \nohyphens
  285.   \leftskip=\raggedskip\@plus\raggedstretch
  286.   \rightskip=\leftskip \raggedspaces
  287.   \parindent=\z@ \parfillskip=\z@skip }
  288. \def\normalspaces{\spaceskip\z@skip \xspaceskip\z@skip }
  289. \def~{\unskip\nobreak\ \ignorespaces}
  290. \def\boxcs#1{\box\csname#1\endcsname}
  291. \def\setboxcs#1{\setbox\csname#1\endcsname}
  292. \def\newboxcs#1{\expandafter\newbox\csname#1\endcsname}
  293. \let\gobble\@gobble
  294. \def\vellipsis{%
  295.   \leavevmode\kern0.5em
  296.   \raise\p@\vbox{\baselineskip6\p@\vskip7\p@\hbox{.}\hbox{.}\hbox{.}}
  297.   }
  298. \def\bull{\vrule \@height 1ex \@width .8ex \@depth -.2ex }
  299. \def\cents{{\rm\raise.2ex\rlap{\kern.05em$\scriptstyle/$}c}}
  300. \def\Dag{\raise .6ex\hbox{$\scriptstyle\dagger$}}
  301. \def\careof{\leavevmode\hbox{\raise.75ex\hbox{c}\kern-.15em
  302.                 /\kern-.125em\smash{\lower.3ex\hbox{o}}} \ignorespaces}
  303. \DeclareRobustCommand\sfrac[1]{\@ifnextchar/{\@sfrac{#1}}%
  304.                                             {\@sfrac{#1}/}}
  305. \def\@sfrac#1/#2{\leavevmode\kern.1em\raise.5ex
  306.          \hbox{$\m@th\mbox{\fontsize\sf@size\z@
  307.                            \selectfont#1}$}\kern-.1em
  308.          /\kern-.15em\lower.25ex
  309.           \hbox{$\m@th\mbox{\fontsize\sf@size\z@
  310.                             \selectfont#2}$}}
  311. \DeclareRobustCommand\cs[1]{\texttt{\char`\\#1}}
  312. \def\thinskip{\hskip 0.16667em\relax}
  313. \def\endash{--}
  314. \def\emdash{\endash-}
  315. \def\d@sh#1#2{\unskip#1\thinskip#2\thinskip\ignorespaces}
  316. \def\dash{\d@sh\nobreak\endash}
  317. \def\Dash{\d@sh\nobreak\emdash}
  318. \def\ldash{\d@sh\empty{\hbox{\endash}\nobreak}}
  319. \def\rdash{\d@sh\nobreak\endash}
  320. \def\Ldash{\d@sh\empty{\hbox{\emdash}\nobreak}}
  321. \def\Rdash{\d@sh\nobreak\emdash}
  322. \def\hyph{-\penalty\z@\hskip\z@skip }
  323. \def\slash{/\penalty\z@\hskip\z@skip }
  324. \def\nth#1{%
  325.     \def\reserved@a##1##2\@nil{\ifcat##1n%
  326.            0%
  327.    \let\reserved@b\ensuremath
  328.       \else##1##2%
  329.    \let\reserved@b\relax
  330.       \fi}%
  331.     \TestCount=\reserved@a#1\@nil\relax
  332.     \ifnum\TestCount <0 \multiply\TestCount by\m@ne \fi % subdue negatives
  333.     \T@stCount=\TestCount
  334.     \divide\T@stCount by 100 \multiply\T@stCount by 100
  335.     \advance\TestCount by-\T@stCount     % n mod 100
  336.     \ifnum\TestCount >20 \T@stCount=\TestCount
  337.       \divide\T@stCount by 10 \multiply\T@stCount by 10
  338.       \advance\TestCount by-\T@stCount   % n mod 10
  339.     \fi
  340.      \reserved@b{#1}%
  341.        \textsuperscript{\ifcase\TestCount th%    0th
  342.                         \or   st%                1st
  343.                         \or   nd%                2nd
  344.                         \or   rd%                3rd
  345.                         \else th%                nth
  346.                         \fi}%
  347.      }
  348. \def\Review{\@ifnextchar:{\@Review}{\@Review:}}
  349. \def\@Review:{\@ifnextchar[%]
  350.   {\@Rev}%
  351.   {\@Rev[Book review]}}
  352. \def\@Rev[#1]#2{{\ignorespaces#1\unskip:\enspace\ignorespaces
  353.                                         \slshape\mdseries#2}}
  354. \def\reviewitem{\addvspace{\BelowTitleSkip}%
  355.   \def\revauth##1{\def\therevauth{##1, }\ignorespaces}%
  356.   \def\revtitle##1{\def\therevtitle{{\slshape##1}. }\ignorespaces}%
  357.   \def\revpubinfo##1{\def\therevpubinfo{##1.}\ignorespaces}%
  358.   }
  359. \def\endreviewitem{{\noindent\interlinepenalty=10000
  360.   \therevauth\therevtitle\therevpubinfo\endgraf}%
  361.   \vskip\medskipamount
  362.   }
  363. \def\booktitle#1{{\slshape#1\/}}
  364. \newcount\issueseqno            \issueseqno=-1
  365. \def\v@lx{\gdef\volx{Volume~\volno~(\volyr), No.~\issno}}
  366. \def\volyr{}
  367. \def\volno{}
  368. \def\vol #1,#2.{\gdef\volno{#1\unskip}%
  369.         \gdef\issno{\ignorespaces#2\unskip}%
  370.         \setbox\TestBox=\hbox{\volyr}%
  371.         \ifdim \wd\TestBox > .2em \v@lx \fi }
  372. \def\issdate #1#2 #3.{\gdef\issdt{#1#2 #3}\gdef\volyr{#3}%
  373.         \gdef\bigissdt{#1{\smc\uppercase{#2}} #3}%
  374.         \setbox\TestBox=\hbox{\volno}%
  375.         \ifdim \wd\TestBox > .2em \v@lx \fi }
  376. \vol 0, 0.
  377. \issdate Thermidor, 2001.
  378. \def\tubissue#1{\@ifnextchar(%)
  379.   {\@tubissue@b{#1}}
  380.   {\@tubissue@a{#1}}}
  381. \def\@tubissue@b#1(#2){\@tubissue@a{#1}{#2}}
  382. \def\@tubissue@a#1#2%
  383.   {\TUB~#1, no.~#2}
  384. \def\infil@{\jobname}
  385. \def\Input #1 {\ifnum\issueseqno<0
  386.     \def\infil@{#1}%
  387.   \else
  388.     \def\infil@{tb\number\issueseqno#1}
  389.   \fi
  390.   \edef\jobname{\infil@}\@readFLN
  391.   \@@input \infil@\relax
  392.   \if@RMKopen
  393.     \immediate\closeout\@TBremarkfile\@RMKopenfalse
  394.   \fi
  395. }
  396. \newif\if@RMKopen        \@RMKopenfalse
  397. \newwrite\@TBremarkfile
  398. \def\@TBremark#1{%
  399.   \if@RMKopen
  400.   \else
  401.     \@RMKopentrue\immediate\openout\@TBremarkfile=\infil@.rmk
  402.   \fi
  403.   \toks@={#1}%
  404.   \immediate\write\@TBremarkfile{^^J\the\toks@}%
  405.   \immediate\write16{^^JTBremark:: \the\toks@^^J}%
  406. }
  407. \let\TBremark=\gobble
  408. \def\TBEnableRemarks{\let\TBremark\@TBremark}
  409. \def\TUBedit#1{}
  410. \def\TUBfilename#1#2{\expandafter\def\csname file@@#1\endcsname{#2}}
  411. \InputIfFileExists{\jobname.fln}%
  412.      {\TBInfo{Reading alternative file file \jobname.fln}}{}
  413. \def\@tubfilename#1{\expandafter\ifx\csname file@@#1\endcsname\relax
  414.   #1\else\csname file@@#1\endcsname\fi}
  415. \def\fileinput#1{\@@input\@tubfilename{#1} }
  416. \def\pagexrefON#1{%
  417.         \write-1{\def\expandafter\noexpand\csname#1\endcsname{\number\c@page}}%
  418.         \write\ppoutfile{%
  419.                 \def\expandafter\noexpand\csname#1\endcsname{\number\c@page}}%
  420.         }
  421. \def\PageXrefON#1{%
  422.         \immediate\write-1{\def\expandafter
  423.                         \noexpand\csname#1\endcsname{\number\c@page}}%
  424.         \immediate\write\ppoutfile{\def\expandafter
  425.                         \noexpand\csname#1\endcsname{\number\c@page}}}
  426. \def\pagexrefOFF#1{}
  427. \let\pagexref=\pagexrefOFF
  428. \def\PageXrefOFF#1{}
  429. \let\PageXref=\PageXrefOFF
  430. \def\xreftoON#1{%
  431.   \ifundefined{#1}%
  432.     ???\TBremark{Need cross reference for #1.}%
  433.   \else\csname#1\endcsname\fi}
  434. \def\xreftoOFF#1{???}
  435. \let\xrefto=\xreftoOFF
  436. \let\TBdriver\gobble
  437. \hyphenation{Eijk-hout Hara-lam-bous man-u-script man-u-scripts}
  438. \PrelimDrafttrue
  439. \textheight 54pc
  440. \textwidth 39pc
  441. \columnsep 1.5pc
  442. \columnwidth 18.75pc
  443. \parindent \normalparindent
  444. \parskip \z@ % \@plus\p@
  445. \leftmargini 2em
  446. \leftmarginv .5em
  447. \leftmarginvi .5em
  448. \oddsidemargin \z@
  449. \evensidemargin \z@
  450. \topmargin -2.5pc
  451. \headheight 12\p@
  452. \headsep 20\p@
  453. \marginparwidth 48\p@
  454. \marginparsep 10\p@
  455. \partopsep=\z@
  456. \topsep=3\p@\@plus\p@\@minus\p@
  457. \parsep=3\p@\@plus\p@\@minus\p@
  458. \itemsep=\parsep
  459. \twocolumn
  460. \newdimen\pagewd        \pagewd=39pc
  461. \newdimen\trimwd        \trimwd=\pagewd
  462. \newdimen\trimlgt       \trimlgt=11in
  463. \newdimen\headmargin    \headmargin=3.5pc
  464. \newcommand\DeclareLaTeXLogo[5]{\expandafter\def
  465.   \csname @LaTeX@#1/#2/#3\endcsname{{#4}{#5}}}
  466. \def\@LaTeX@default{{.36}{.15}}
  467. \DeclareLaTeXLogo{cmss}{bx}n{.3}{.15}
  468. \DeclareLaTeXLogo{cmr}m{it}{.3}{.27}
  469. \DeclareLaTeXLogo{cmr}{bx}{it}{.3}{.27}
  470. \DeclareRobustCommand\LaTeX{\expandafter\let\expandafter\reserved@a
  471.   \csname @LaTeX@\f@family/\f@series/\f@shape\endcsname
  472.   \ifx\reserved@a\relax\let\reserved@a\@LaTeX@default\fi
  473.   \expandafter\@LaTeX\reserved@a}
  474. \newcommand\@LaTeX[2]{L\kern-#1em
  475.         {\sbox\z@ T%
  476.          \vbox to\ht0{\hbox{$\m@th$%
  477.                             \csname S@\f@size\endcsname
  478.                             \fontsize\sf@size\z@
  479.                             \math@fontsfalse\selectfont
  480.                             A}%
  481.                       \vss}%
  482.         }%
  483.         \kern-#2em%
  484.         \TeX}
  485. \def\theauthor#1{\csname theauthor#1\endcsname}
  486. \def\theaddress#1{\csname theaddress#1\endcsname}
  487. \def\thenetaddress#1{\csname thenetaddress#1\endcsname}
  488. \def\thePersonalURL#1{\csname thePersonalURL#1\endcsname}
  489. \def\@defaultauthorlist{%
  490.    \count@\authornumber
  491.    \advance\count@ by -2
  492.    \@tempcnta0
  493.    \loop
  494.    \ifnum\count@>0
  495.       \advance\@tempcnta by \@ne
  496.       \ignorespaces\theauthor{\number\@tempcnta}\unskip,
  497.       \advance\count@ by \m@ne
  498.    \repeat
  499.    \count@\authornumber
  500.    \advance\count@ by -\@tempcnta
  501.    \ifnum\authornumber>0
  502.      \ifnum\count@>1
  503.        \count@\authornumber
  504.        \advance\count@ by \m@ne
  505.        \ignorespaces\theauthor{\number\count@}\unskip\ and
  506.        \fi
  507.      \ignorespaces\theauthor{\number\authornumber}\unskip
  508.    \fi
  509.   }
  510. \def\signature#1{\def\@signature{#1}}
  511. \def\@signature{\@defaultsignature}
  512. \def\@defaultsignature{%
  513.   \count@=0
  514.   \loop
  515.   \ifnum\count@<\authornumber
  516.     \medskip
  517.     \advance\count@ by \@ne
  518.     \signaturemark
  519.     \theauthor{\number\count@}\\
  520.     \theaddress{\number\count@}\\
  521.     {%
  522.       \allowhyphens
  523.       \thenetaddress{\number\count@}\\
  524.       \thePersonalURL{\number\count@}\\
  525.     }%
  526.   \repeat
  527.   }
  528. \newdimen\signaturewidth   \signaturewidth=12pc
  529. \def\makesignature{%
  530.   \par
  531.   \penalty9000
  532.   \medskip
  533.   \rightline{%
  534.     \vbox{\hsize\signaturewidth \ninepoint \raggedright
  535.       \parindent \z@ \everypar={\hangindent 1pc }
  536.       \parskip \z@skip
  537.       \def\|{\unskip\hfil\break}%
  538.       \def\\{\endgraf}%
  539.       \def\phone{\rm Phone: }
  540.       \rm\@signature}}
  541.   }
  542. \def\signaturemark{\leavevmode\llap{$\diamond$\enspace}}
  543. \newcount\authornumber
  544. \authornumber=0
  545. \def\author#1{%
  546.   \global\advance\authornumber\@ne
  547.   \expandafter\def\csname theauthor\number\authornumber\endcsname
  548.       {\ignorespaces#1\unskip}%
  549.   \expandafter\def\csname theaddress\number\authornumber\endcsname
  550.     {\TBWarning{Address for #1\space missing}\@gobble}%
  551.   \expandafter\def\csname thenetaddress\number\authornumber\endcsname
  552.     {\TBWarning{Net address for #1\space missing}\@gobble}%
  553.   \expandafter\let\csname thePersonalURL\number\authornumber\endcsname
  554.     \@gobble
  555.   }
  556. \def\address#1{%
  557.   \expandafter\def\csname theaddress\number\authornumber\endcsname
  558.       {\leavevmode\ignorespaces#1\unskip}}
  559. \def\network#1{\def\@network{#1: }}
  560. \newcommand\netaddress[1][\relax]{%
  561.   \begingroup
  562.   \def\@network{}%
  563.   #1\@sanitize\makespace\ \makeactive\@
  564.   \makeactive\.\makeactive\%\@relay@netaddress}%
  565. \def\@relay@netaddress#1{%
  566.   \ProtectNetChars
  567.   \expandafter\protected@xdef
  568.       \csname thenetaddress\number\authornumber\endcsname
  569.     {\protect\leavevmode\textrm{\@network}%
  570.      {\protect\NetAddrChars\net
  571.       \ignorespaces#1\unskip}}%
  572.   \endgroup
  573.   }
  574. \def\personalURL{\begingroup
  575.   \@sanitize\makespace\ \makeactive\@
  576.   \makeactive\.\makeactive\%\makeactive\/\@personalURL}%
  577. \def\@personalURL#1{%
  578.   \ProtectNetChars
  579.   \expandafter\protected@xdef
  580.       \csname thePersonalURL\number\authornumber\endcsname
  581.   {\protect\leavevmode\textrm{\acro{URL}: }%
  582.      {\protect\URLchars\net
  583.       \ignorespaces#1\unskip}}%
  584.   \endgroup
  585.   }
  586. {%
  587.   \makecomment\*
  588.   \makeactive\@
  589.   \gdef\netaddrat{\makeactive\@*
  590.     \def@{\discretionary{\char"40}{}{\char"40}}}
  591.   \makeactive\%
  592.   \gdef\netaddrpercent{\makeactive\%*
  593.     \def%{\discretionary{\char"25}{}{\char"25}}}
  594.   \makeactive\.
  595.   \gdef\netaddrdot{\makeactive\.*
  596.     \def.{\discretionary{\char"2E}{}{\char"2E}}}
  597.   \gdef\NetAddrChars{\netaddrat \netaddrpercent \netaddrdot}
  598.   \makeactive\/
  599.   \gdef\URLchars{*
  600.     \NetAddrChars
  601.     \makeactive\/*
  602.     \def/{\discretionary{\char"2F}{}{\char"2F}}}
  603.   \gdef\ProtectNetChars{*
  604.     \def@{\protect@}*
  605.     \def%{\protect%}*
  606.     \def.{\protect.}*
  607.     \def/{\protect/}*
  608.     }
  609. }
  610. \if@compatibility
  611.   \DeclareRobustCommand\net{\normalfont\ttfamily\mathgroup\symtypewriter}
  612. \else
  613.   \DeclareOldFontCommand{\net}{\ttfamily\upshape\mdseries}{\mathtt}
  614. \fi
  615. \def\authorlist#1{\def\@author{#1}}
  616. \def\@author{\@defaultauthorlist}
  617. \def\maketitle{\par
  618.  \ifdim\PreTitleDrop > \z@
  619.    \loop
  620.    \ifdim \PreTitleDrop > \textheight
  621.      \vbox{}\vfil\eject
  622.      \advance\PreTitleDrop by -\textheight
  623.    \repeat
  624.    \vbox to \PreTitleDrop{}
  625.    \global\PreTitleDrop=\z@
  626.  \fi
  627.  \begingroup
  628.  \setcounter{footnote}{0}
  629.  \def\thefootnote{\fnsymbol{footnote}}
  630.  \@maketitle
  631.  \@thanks
  632.  \endgroup
  633.  \setcounter{footnote}{0}
  634.  \gdef\@thanks{}
  635.  }
  636. \def\secsep{\vskip 5\baselineskip}
  637. \newdimen\stbaselineskip        \stbaselineskip=18\p@
  638. \newdimen\stfontheight
  639.  \settoheight{\stfontheight}{\sectitlefont O}
  640. \newif\ifSecTitle
  641. \SecTitlefalse
  642. \def \sectitle#1{%
  643.   \SecTitletrue
  644.   \def\s@ctitle{#1}}
  645. \newdimen\PreTitleDrop   \PreTitleDrop=\z@
  646. \newskip\AboveTitleSkip  \AboveTitleSkip=12\p@
  647. \newskip\BelowTitleSkip  \BelowTitleSkip=8\p@
  648. \newdimen\strulethickness       \strulethickness=.6\p@
  649. \def\@sectitle #1{%
  650.   \par
  651.   \penalty-1000
  652.   \secsep
  653.   {%
  654.     \fboxrule\strulethickness
  655.     \fboxsep\z@
  656.     \noindent\framebox[\hsize]{%
  657.       \raggedcenter
  658.       \def\\{\unskip\break}%
  659.       \sectitlefont
  660.       \makestrut[2\stfontheight;\z@]%
  661.       #1%
  662.       \makestrut[\z@;\stfontheight]\endgraf
  663.     }%
  664.   }%
  665.   \nobreak
  666.   \vskip\baselineskip
  667. }
  668. \newif\ifWideSecTitle
  669. \def\@maketitle{\ifSecTitle \global\SecTitlefalse
  670.                 \T@stDimen=\hsize
  671.                 \ifWideSecTitle \hsize=\textwidth \global\WideSecTitlefalse \fi
  672.                 \@sectitle{\s@ctitle}%
  673.                 \hsize=\T@stDimen
  674.         \else \vskip\AboveTitleSkip
  675.                 \kern\topskip
  676.                 \hrule \@height\z@ \@depth\z@ \@width 10\p@
  677.                 \kern-\topskip
  678.                 \kern-\strulethickness
  679.                 \hrule \@height\strulethickness \@depth\z@
  680.                 \kern\medskipamount
  681.                 \nobreak
  682.         \fi
  683.         {\nohyphens \interlinepenalty\@M
  684.         \setbox0=
  685.           \hbox{\let\thanks\@gobble
  686.                 \let\\=\quad
  687.                 \let\and=\quad
  688.                 \ignorespaces\@author}%
  689.         {\noindent\bf\raggedright\ignorespaces\@title\endgraf}%
  690.         \ifdim \wd0 < 5\p@               % omit if author is null
  691.         \else \nobreak \vskip 4\p@       % 4pt + \BelowTitleSkip = \baselineskip
  692.                 {\leftskip=\normalparindent
  693.                  \raggedright
  694.                  \def\and{\unskip\\}%
  695.                  \noindent\@author\endgraf}%
  696.         \fi \nobreak \vskip\BelowTitleSkip}%
  697.         \global\@afterindentfalse\aftergroup\@afterheading
  698. }
  699. \newenvironment{dedication}%
  700.   {\raggedright\noindent\itshape\ignorespaces}%
  701.   {\endgraf\medskip}
  702. \renewenvironment{abstract}%
  703.   {\section*{Abstract}}%
  704.   {}
  705. \newenvironment{longabstract}%
  706.   {\section*{Abstract}
  707.    \bgroup\small}%
  708.   {\endgraf\egroup
  709.   \vspace{.25\baselineskip}
  710.   \begin{center}
  711.     {$--*--$}
  712.   \end{center}
  713.   \vspace{.5\baselineskip}}
  714. \if@numbersec
  715.   \def\section{\@startsection {section}%
  716.                               1%
  717.                               \z@
  718.                               {-8\p@}%
  719.                               {4\p@}%
  720.           {\normalsize\bf\raggedright\hyphenpenalty=\@M}}
  721.   \def\subsection{\TB@startsection{{subsection}%
  722.                                    2%
  723.                                    \z@
  724.                                    {-8\p@}%
  725.                                    {4\p@}%
  726.           {\normalsize\bf\raggedright\hyphenpenalty=\@M}}}
  727.   \def\subsubsection{\TB@startsection{{subsubsection}%
  728.                                       3%
  729.                                       \z@
  730.                                       {-8\p@}%
  731.                                       {4\p@}%
  732.           {\normalsize\bf\raggedright\hyphenpenalty=\@M}}}
  733.   \def\paragraph{\TB@startsection{{paragraph}%
  734.                                   4%
  735.                                   \z@
  736.                                   {2.5ex\@plus 1ex}%
  737.                                   {-1em}%
  738.                                   {\normalsize\bf}}}
  739. \else
  740.   \setcounter{secnumdepth}0
  741.   \def\section{\TB@nolimelabel
  742.                \TB@startsection{{section}%
  743.                                 1%
  744.                                 \z@
  745.                                 {-8\p@}%
  746.                                 {4\p@}%
  747.           {\normalsize\bf\raggedright\hyphenpenalty=\@M}}}
  748.   \def\subsection{\TB@nolimelabel
  749.                   \TB@startsection{{subsection}%
  750.                                    2%
  751.                                    \z@
  752.                                    {-8\p@}%
  753.                                    {-0.5em\@plus-\fontdimen3\font}%
  754.           {\normalsize\bf\raggedright\hyphenpenalty=\@M}}}
  755.   \def\subsubsection{\TB@nolimelabel
  756.                      \TB@startsection{{subsubsection}%
  757.                                       3%
  758.                                       \parindent
  759.                                       {-8\p@}%
  760.                                       {-0.5em\@plus-\fontdimen3\font}%
  761.           {\normalsize\bf\raggedright\hyphenpenalty=\@M}}}
  762. \fi
  763. \def\TB@startsection#1{\@ifstar
  764.   {\TBWarning{*-form of \expandafter\string\csname\@firstofsix#1%
  765.               \endcsname\space inappropriate}%
  766.    \@startsection#1}%
  767.   {\@startsection#1}}
  768. \def\@firstofsix#1#2#3#4#5#6{#1}
  769. \def\TB@safe@startsection#1{\@startsection#1}
  770. \if@numbersec
  771.   \def\subparagraph{\TB@nosection\subparagraph\paragraph}
  772. \else
  773.   \def\paragraph{\TB@nosection\paragraph\subsubectgion}
  774.   \def\subparagraph{\TB@nosection\subparagraph\subsubsection}
  775. \fi
  776. \def\chapter{\TB@nosection\chapter\section}
  777. \def\part{\TB@nosection\part\section}
  778. \def\TB@nosection#1#2{\TBWarning{class does not support \string#1,
  779.     \string#2\ used instead}#2}
  780. \def\l@section#1#2{\addpenalty{\@secpenalty}%
  781.   \addvspace{1.0em\@plus\p@}%
  782.   \@tempdima 1.5em
  783.   \begingroup
  784.     \parindent\z@ \rightskip\z@  % article style makes \rightskip > 0
  785.     \parfillskip\z@
  786.     \bf\leavevmode\advance\leftskip\@tempdima\hskip-\leftskip#1\nobreak\hfil
  787.     \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
  788.   \endgroup}
  789. \def\TB@nolimelabel{\def\@currentlabel{\protect\TBWarning
  790.                         {Invalid label on page \thepage\space used}%
  791.                       \textbf{?!?}}}
  792. \long\def\@makecaption#1#2{%
  793.   \vskip\abovecaptionskip
  794.   \sbox\@tempboxa{#1: #2}%
  795.   \ifdim \wd\@tempboxa >\hsize
  796.     \raggedright\hyphenpenalty=\@M
  797.     #1: #2\par
  798.   \else
  799.     \global \@minipagefalse
  800.     \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
  801.   \fi
  802.   \vskip\belowcaptionskip}
  803. \renewcommand\normalsize{%
  804.    \@setfontsize\normalsize\@xpt\@xiipt
  805.    \abovedisplayskip=3\p@\@plus 3\p@\@minus\p@
  806.    \belowdisplayskip=\abovedisplayskip
  807.    \abovedisplayshortskip=\z@\@plus 3\p@
  808.    \belowdisplayshortskip=\p@\@plus 3\p@\@minus\p@
  809. }
  810.  
  811. \renewcommand\small{%
  812.    \@setfontsize\small\@ixpt{11}%
  813.    \abovedisplayskip=2.5\p@\@plus 2.5\p@\@minus\p@
  814.    \belowdisplayskip=\abovedisplayskip
  815.    \abovedisplayshortskip=\z@\@plus 2\p@
  816.    \belowdisplayshortskip=\p@\@plus 2\p@\@minus\p@
  817. }
  818. \renewcommand\footnotesize{%
  819.     \@setfontsize\footnotesize\@viiipt{9.5}%
  820.     \abovedisplayskip=3\p@\@plus 3\p@\@minus\p@
  821.     \belowdisplayskip=\abovedisplayskip
  822.     \abovedisplayshortskip=\z@\@plus 3\p@
  823.     \belowdisplayshortskip=\p@\@plus 3\p@\@minus\p@
  824. }
  825. \def\@listi{%
  826.   \leftmargin\leftmargini\parsep=\p@\@plus\p@\@minus\p@
  827.   \itemsep=\parsep
  828.   \listparindent=1em
  829.   }
  830.  
  831. \def\@listii{%
  832.   \leftmargin\leftmarginii
  833.   \labelwidth=\leftmarginii \advance\labelwidth-\labelsep
  834.   \topsep=2\p@\@plus\p@\@minus\p@
  835.   \parsep=\p@\@plus\p@\@minus\p@
  836.   \itemsep=\parsep
  837.   \listparindent=1em
  838.   }
  839.  
  840. \def\@listiii{%
  841.   \leftmargin=\leftmarginiii
  842.   \labelwidth=\leftmarginiii \advance\labelwidth-\labelsep
  843.   \topsep=\p@\@plus\p@\@minus\p@
  844.   \parsep=\z@
  845.   \itemsep=\topsep
  846.   \listparindent=1em
  847.   }
  848. \def\quote{\list{}{\rightmargin.5\leftmargin}\item[]}
  849. \renewcommand{\quotation}{\list{}{\listparindent 1.5em
  850.      \rightmargin.5\leftmargin\parsep \z@\@plus\p@}\item[]}
  851. \let\@TBverbatim\verbatim
  852. \let\@TBendverbatim\endverbatim
  853. \def\verbatim{\futurelet\reserved@a\@switch@sqbverbatim}
  854. \def\@switch@sqbverbatim{\ifx\reserved@a[%]
  855.   \expandafter\@sqbverbatim\else
  856.   \def\reserved@b{\@sqbverbatim[]}\expandafter\reserved@b\fi}
  857. \def\@sqbverbatim[#1]{%
  858.   \def\ruled{\let\if@ruled\iftrue}%
  859.   #1\@TBverbatim}
  860. \def\@verbatim{%
  861.     \if@ruled\trivlist\item\hrule\kern5\p@\nobreak\fi
  862.   \trivlist \item\relax
  863.   \if@minipage\else\vskip\parskip\fi
  864.   \leftskip\@totalleftmargin\rightskip\z@skip
  865.   \parindent\z@\parfillskip\@flushglue\parskip\z@skip
  866.   \@@par
  867.   \@tempswafalse
  868.   \def\par{%
  869.     \if@tempswa
  870.       \leavevmode \null \@@par\penalty\interlinepenalty
  871.     \else
  872.       \@tempswatrue
  873.       \ifhmode\@@par\penalty\interlinepenalty\fi
  874.     \fi}%
  875.   \obeylines \verbatim@font \@noligs
  876.   \let\do\@makeother \dospecials
  877.   \everypar \expandafter{\the\everypar \unpenalty}%
  878. }%
  879. \def\endverbatim{\@TBendverbatim
  880.   \if@ruled\kern5\p@\hrule\endtrivlist\fi}
  881. {\makeactive<
  882.   \gdef<#1>{{\reset@font\ensuremath{\langle}%
  883.     \textit{#1}%
  884.     \ensuremath{\rangle}}}
  885. }
  886. \let\if@ruled\iffalse
  887. \if@Harvardcite
  888. \let\@internalcite\cite
  889. \def\cite{\def\@citeseppen{-1000}%
  890.     \def\@cite##1##2{(##1\if@tempswa , ##2\fi)}%
  891.     \def\citeauthoryear##1##2##3{##1, ##3}\@internalcite}
  892. \def\citeNP{\def\@citeseppen{-1000}%
  893.     \def\@cite##1##2{##1\if@tempswa , ##2\fi}%
  894.     \def\citeauthoryear##1##2##3{##1, ##3}\@internalcite}
  895. \def\citeN{\def\@citeseppen{-1000}%
  896.     \def\@cite##1##2{##1\if@tempswa , ##2)\else{)}\fi}%
  897.     \def\citeauthoryear##1##2##3{##1 (##3}\@citedata}
  898. \def\citeA{\def\@citeseppen{-1000}%
  899.     \def\@cite##1##2{(##1\if@tempswa , ##2\fi)}%
  900.     \def\citeauthoryear##1##2##3{##1}\@internalcite}
  901. \def\citeANP{\def\@citeseppen{-1000}%
  902.     \def\@cite##1##2{##1\if@tempswa , ##2\fi}%
  903.     \def\citeauthoryear##1##2##3{##1}\@internalcite}
  904. \def\shortcite{\def\@citeseppen{-1000}%
  905.     \def\@cite##1##2{(##1\if@tempswa , ##2\fi)}%
  906.     \def\citeauthoryear##1##2##3{##2, ##3}\@internalcite}
  907. \def\shortciteNP{\def\@citeseppen{-1000}%
  908.     \def\@cite##1##2{##1\if@tempswa , ##2\fi}%
  909.     \def\citeauthoryear##1##2##3{##2, ##3}\@internalcite}
  910. \def\shortciteN{\def\@citeseppen{-1000}%
  911.     \def\@cite##1##2{##1\if@tempswa , ##2)\else{)}\fi}%
  912.     \def\citeauthoryear##1##2##3{##2 (##3}\@citedata}
  913. \def\shortciteA{\def\@citeseppen{-1000}%
  914.     \def\@cite##1##2{(##1\if@tempswa , ##2\fi)}%
  915.     \def\citeauthoryear##1##2##3{##2}\@internalcite}
  916. \def\shortciteANP{\def\@citeseppen{-1000}%
  917.     \def\@cite##1##2{##1\if@tempswa , ##2\fi}%
  918.     \def\citeauthoryear##1##2##3{##2}\@internalcite}
  919. \def\citeyear{\def\@citeseppen{-1000}%
  920.     \def\@cite##1##2{(##1\if@tempswa , ##2\fi)}%
  921.     \def\citeauthoryear##1##2##3{##3}\@citedata}
  922. \def\citeyearNP{\def\@citeseppen{-1000}%
  923.     \def\@cite##1##2{##1\if@tempswa , ##2\fi}%
  924.     \def\citeauthoryear##1##2##3{##3}\@citedata}
  925. \def\@citedata{%
  926.         \@ifnextchar [{\@tempswatrue\@citedatax}%
  927.                                   {\@tempswafalse\@citedatax[]}%
  928. }
  929.  
  930. \def\@citedatax[#1]#2{%
  931. \if@filesw\immediate\write\@auxout{\string\citation{#2}}\fi%
  932.   \def\@citea{}\@cite{\@for\@citeb:=#2\do%
  933.     {\@citea\def\@citea{, }\@ifundefined% by Young
  934.        {b@\@citeb}{{\bf ?}%
  935.        \@warning{Citation `\@citeb' on page \thepage \space undefined}}%
  936. {\csname b@\@citeb\endcsname}}}{#1}}%
  937. \def\@citex[#1]#2{%
  938. \if@filesw\immediate\write\@auxout{\string\citation{#2}}\fi%
  939.   \def\@citea{}\@cite{\@for\@citeb:=#2\do%
  940.     {\@citea\def\@citea{; }\@ifundefined% by Young
  941.        {b@\@citeb}{{\bf ?}%
  942.        \@warning{Citation `\@citeb' on page \thepage \space undefined}}%
  943. {\csname b@\@citeb\endcsname}}}{#1}}%
  944. \def\@biblabel#1{}
  945. \newlength{\bibhang}
  946. \setlength{\bibhang}{2em}
  947. \newdimen\bibindent
  948. \bibindent=1.5em
  949. \@ifundefined{refname}%
  950.    {\newcommand{\refname}{References}}%
  951.    {}%
  952. \def\thebibliography#1{\let\TB@startsection\TB@safe@startsection
  953.   \section*{\refname\@mkboth
  954.   {\uppercase{\refname}}{\uppercase{\refname}}}\list
  955.   {[\arabic{enumi}]}{%
  956.   \labelwidth\z@ \labelsep\z@
  957.   \leftmargin\bibindent
  958.   \itemindent -\bibindent
  959.   \listparindent \itemindent
  960.   \parsep \z@
  961.   \usecounter{enumi}}
  962.   \def\newblock{}
  963.   \sloppy
  964.   \sfcode`\.=1000\relax}
  965. \def\etal{et\,al.\@}
  966. \def\bibentry{\smallskip
  967.               \hangindent=\parindent
  968.               \hangafter=1
  969.               \noindent
  970.               \sloppy
  971.               \clubpenalty500 \widowpenalty500
  972.               \frenchspacing}
  973. \def\bibliography#1{%
  974.   \if@filesw\immediate\write\@auxout{\string\bibdata{\@tubfilename{#1}}}\fi
  975.   \@input{\jobname.bbl}}
  976.  
  977. \def\bibliographystyle#1{\if@filesw\immediate\write\@auxout
  978.     {\string\bibstyle{\@tubfilename{#1}}}\fi}
  979. \else
  980. \let\TB@save@thebibliography\thebibliography
  981. \def\thebibliography{\let\TB@startsection\TB@safe@startsection
  982.   \TB@save@thebibliography}
  983. \fi
  984. \def\HorzR@gisterRule{\vrule \@height 0.2\p@ \@depth\z@ \@width 0.5in }
  985. \def\DownShortR@gisterRule{\vrule \@height 0.2\p@ \@depth 1pc \@width 0.2\p@ }
  986. \def\UpShortR@gisterRule{\vrule \@height 1pc \@depth\z@ \@width 0.2\p@ }
  987. \def\ttopregister{\dlap{%
  988.         \hb@xt@\trimwd{\HorzR@gisterRule \hfil \HorzR@gisterRule
  989.                         \HorzR@gisterRule \hfil \HorzR@gisterRule}%
  990.         \hb@xt@\trimwd{\hfil \DownShortR@gisterRule \hfil}}}
  991. \def\tbotregister{\ulap{%
  992.         \hb@xt@\trimwd{\hfil \UpShortR@gisterRule \hfil}%
  993.         \hb@xt@\trimwd{\HorzR@gisterRule \hfil \HorzR@gisterRule
  994.                         \HorzR@gisterRule \hfil \HorzR@gisterRule}}}
  995. \def\topregister{\ttopregister}
  996. \def\botregister{\tbotregister}
  997. \def \rtitlex{\def\texttub##1{{\normalsize\textrm{##1}}}\TUB, \volx }
  998.  
  999. \def\PrelimDraftfooter{%
  1000.   \dlap{\kern\textheight\kern3pc
  1001.         \rlap{\hb@xt@\pagewd{\midrtitle\hfil\midrtitle}}
  1002.   }}
  1003.  
  1004. \def\MakeRegistrationMarks{}
  1005. \def\UseTrimMarks{%
  1006.   \def\MakeRegistrationMarks{%
  1007.     \ulap{\rlap{%
  1008.        \vbox{\dlap{\vbox to\trimlgt{\vfil\botregister}}%
  1009.              \topregister\vskip \headmargin \vskip 10\p@}}}}%
  1010.   }
  1011.  
  1012. \def\@oddhead{\MakeRegistrationMarks\PrelimDraftfooter
  1013.   \normalsize\csname normalshape\endcsname\rm
  1014.   \rtitlex\qquad\midrtitle \hfil \thepage}
  1015. \def\@evenhead{\MakeRegistrationMarks\PrelimDraftfooter
  1016.   \normalsize\csname normalshape\endcsname\rm
  1017.   \thepage\hfil\midrtitle\qquad\rtitlex}
  1018. \def\@oddfoot{}
  1019. \def\@evenfoot{}
  1020. \def\ps@headings{}
  1021. \pagestyle{headings}
  1022. \def\@outputdblcol{\if@firstcolumn \global\@firstcolumnfalse
  1023.     \global\setbox\@leftcolumn\box\@outputbox
  1024.     \global\brokenpenalty10000
  1025.   \else \global\@firstcolumntrue
  1026.     \global\brokenpenalty100
  1027.     \setbox\@outputbox\vbox{\hb@xt@\textwidth{\hb@xt@\columnwidth
  1028.       {\box\@leftcolumn \hss}\hfil \vrule \@width\columnseprule\hfil
  1029.        \hb@xt@\columnwidth{\box\@outputbox \hss}}}\@combinedblfloats
  1030.        \@outputpage \begingroup \@dblfloatplacement \@startdblcolumn
  1031.        \@whilesw\if@fcolmade \fi{\@outputpage\@startdblcolumn}\endgroup
  1032.     \fi}
  1033. \newif\ifFirstPar       \FirstParfalse
  1034. \def\smc{\sc}
  1035. \def\ninepoint{\small}
  1036. \DeclareRobustCommand\SMC{%
  1037.   \ifx\@currsize\normalsize\small\else
  1038.    \ifx\@currsize\small\footnotesize\else
  1039.     \ifx\@currsize\footnotesize\scriptsize\else
  1040.      \ifx\@currsize\large\normalsize\else
  1041.       \ifx\@currsize\Large\large\else
  1042.        \ifx\@currsize\LARGE\Large\else
  1043.         \ifx\@currsize\scriptsize\tiny\else
  1044.          \ifx\@currsize\tiny\tiny\else
  1045.           \ifx\@currsize\huge\LARGE\else
  1046.            \ifx\@currsize\Huge\huge\else
  1047.             \small\SMC@unknown@warning
  1048.  \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi
  1049. }
  1050. \newcommand\SMC@unknown@warning{\TBWarning{\string\SMC: unrecognised
  1051.     text font size command -- using \string\small}}
  1052. \newcommand\textSMC[1]{{\SMC #1}}
  1053. \newcommand\acro[1]{\textSMC{#1}\@}
  1054. \def\xEdNote{{\EdNoteFont Editor's note:\enspace }}
  1055. \def \EdNote{\@ifnextchar[%]
  1056.   {%
  1057.     \ifvmode
  1058.       \smallskip\noindent\let\@EdNote@\@EdNote@v
  1059.     \else
  1060.       \unskip\quad\def\@EdNote@{\unskip\quad}%
  1061.     \fi
  1062.     \@EdNote
  1063.   }%
  1064.   \xEdNote
  1065. }
  1066. \long\def\@EdNote[#1]{%
  1067.   [\thinspace\xEdNote\ignorespaces
  1068.    #1%
  1069.    \unskip\thinspace]%
  1070.   \@EdNote@
  1071. }
  1072. \def\@EdNote@v{\par\smallskip}
  1073. \def\SelfDocumenting{%
  1074.   \setlength\textwidth{31pc}
  1075.   \onecolumn
  1076.   \parindent \z@
  1077.   \parskip 2\p@\@plus\p@\@minus\p@
  1078.   \oddsidemargin 8pc
  1079.   \evensidemargin 8pc
  1080.   \marginparwidth 8pc
  1081.   \toks@\expandafter{\@oddhead}%
  1082.   \xdef\@oddhead{\hss\hb@xt@\pagewd{\the\toks@}}%
  1083.   \toks@\expandafter{\@evenhead}%
  1084.   \xdef\@evenhead{\hss\hb@xt@\pagewd{\the\toks@}}%
  1085.   \def\ps@titlepage{}%
  1086. }
  1087. \def\ps@titlepage{}
  1088.  
  1089. \long\def\@makefntext#1{\parindent 1em\noindent\hb@xt@2em{}%
  1090.   \llap{\@makefnmark}\null$\mskip5mu$#1}
  1091.  
  1092. \def\fnum@figure{{\bf Figure \thefigure}}
  1093. \if@Harvardcite
  1094.   \AtBeginDocument{%
  1095.     \bibliographystyle{ltugbib}%
  1096.   }
  1097. \fi
  1098. \authornumber\z@
  1099. \let\@signature\@defaultsignature
  1100. \InputIfFileExists{ltugboat.cfg}{\TBInfo{Loading ltugboat
  1101.                                            configuration information}}{}
  1102. \endinput
  1103. %%
  1104. %% End of file `ltugboat.cls'.
  1105.